1. Field of the Invention
The present invention relates to an audio decoding device for forming an audio signal by decoding coded signals transmitted by multi-channels of, for example, MPEG2, and also to a signal processing device for performing decoding by synchronizing audio compression signals such as MPEG audio signals or Dolby(copyright) AC-3 signals between an internal decoder and an external decoder.
2. Description of the Related Art
In MPEG2, for example, audio signals to be output simultaneously are transmitted through multi-channels.
In a bit stream by which the multi-channel signals are transmitted, channels for audio signals to be reproduced simultaneously are not proximate to each other and are arranged discretely timewise.
In order to decode and output the coded signals for the multi-channels in such a bit stream, signal decoding should be performed frame by frame as seen in an MPEG2 multi-channel decoder program provided by, for example, the FTP site of the University of California at Berkeley.
Alternatively, the coded signals on the channels arranged in the first half of the frame are temporarily stored in a memory, and then these coded signals are decoded while the coded signals on the channels arranged in the second half of the frame are decoded.
In either case, a large amount of coded signals need to be temporarily stored in a memory, which raises the required capacity of the memory and thus increases the size of the device.
Moreover, in order to perform the operation for decoding the coded signals, a memory capable of high-speed access should be used for temporarily storing the coded signals used for the operation. Since such a memory is expensive, reduction in the required capacity of the memory has been strongly demanded.
Regarding the necessity of a memory capable of high-speed access, a conventional decoding device 500 will be described with reference to FIG. 17.
The decoding device 500 includes a memory section 510 and an operation section 520. The operation section 520 includes a sub-band signal generation section 521 and a sub-band synthesis section 522. When coded signals for n channels are given, the operation section 520 decodes the coded signals into sub-band signals. The sub-band signals for each channel is processed with a sub-band synthesis filter operation to generate an audio signal to be output. The memory section 510 includes a high-speed access memory such as an SRAM, which includes memory areas 511 through 514 for storing sub-band synthesis filter data and a memory area 515 for storing the sub-band signal data.
The decoding device 500 having the above-described structure operates in the following manner.
When the coded signals are input to the operation section 520, the sub-band signal generation device 521 decodes the coded signals into sub-band signals and temporarily stores the sub-band signals in the memory area 515. Then, the sub-band synthesis section 522 reads the sub-band signals from the memory area 515 and performs a sub-band synthesis filter operation of the sub-band signals. Thus, an audio signal is generated and output.
The sub-band synthesis filter data in the memory areas 511 through 514 is partially updated by the sub-band synthesis filter data generated from the sub-band signals in the memory area 515. Accordingly, the operation section 520 needs to read the sub-band synthesis filter data from the memory section 510 when performing the sub-band synthesis filter operation and write again the sub-band synthesis filter data to the memory section 510 after the operation.
The memory section 510 needs to be a memory capable of high-speed access. In the case where the decoding device 500 corresponds to multi-channels, e.g., four channels, the memory section 510 needs to have four memory areas 511 through 514 so as to store sub-band synthesis filter data for the four channels.
A high-speed access memory such as an SRAM used for the memory section 510 needs to have a sufficiently large memory capacity to retain the sub-band synthesis filter data for at least four channels in order to perform real-time reproduction of four-channel data. Such a memory, which is generally expensive, significantly increases the cost of the audio decoding devices.
One format for digital audio interface is the IEC958 format. The IEC958 format is common for industrial and consumer uses. The sub-frame format thereof includes an area in which a synchronous preamble, AUX, 20-bit-unit audio data and other data can be added.
In the case of 2-channel transmission, a frame is formed by alternately repeating sub-frames for each of the two channels, and a block is formed of first through 192nd frames and then transmitted. The format of the audio data to be inserted into the sub-frames is not standardized. For example, a PCM signal formed by sampling an analog audio signal or a non-PCM signal (defined by the format described in ISO/IEC EC 11172-3:1993 and 13818-3:1996) such as compression audio data formed by sub-band coding.
In the case of reproducing coded signals for multi-channels (e.g., five channels of right forward, left forward, center, right rearward and left rearward) by an audio reproduction apparatus including a decoder, the coded signals for all the channels cannot always be decoded only by a built-in decoder (referred to as the xe2x80x9cinternal decoderxe2x80x9d). Many general audio reproduction apparatuses output only audio signals in the right forward and left forward channels from the internal decoder. Such audio reproduction apparatuses require a separate decoder or a separate audio reproduction apparatus (referred to as the xe2x80x9cexternal decoderxe2x80x9d) in order to decode the coded signals for the other channels.
In order to synchronize an audio signal output from the internal decoder and an audio signal output from the external decoder while transmitting a non-PCM signal of the IEC958 format from the internal decoder to the external decoder, a conventional audio reproduction apparatus requires a buffer memory for performing synchronization between the internal decoder and the external decoder. Such a buffer memory needs to have a sufficiently large capacity to retain the coded signals corresponding to a transmission delay time.
As can be appreciated from the above description, synchronization between the internal decoder and the external decoder requires a buffer memory therebetween, which inconveniently increases the size of the apparatus.
According to one aspect of the invention, an audio decoding device includes a coded information memory section for storing coded audio information; an information transmission section for reading the coded audio information stored at an arbitrary position in the coded information memory section; and an audio decoding section for decoding the coded audio information read by the information transmission section and outputting the resultant audio information in accordance with a time axis.
In one embodiment of the invention, the information transmission section includes a buffer memory for retaining an address of an actual pointer for reading the coded audio information in the coded information memory section so as not to be reread, an address of a temporary pointer for reading the coded audio information in the coded information memory section so as to be reread, actual pointer data read by the actual pointer, and temporary pointer data read by the temporary pointer.
In one embodiment of the invention, the actual pointer allows the coded audio information input before the coded audio information pointed by the actual pointer to be erased from the coded information memory section.
In one embodiment of the invention, the actual pointer points a reading position of the coded audio information input after the coded audio information pointed by the actual pointer, to the coded information memory section.
In one embodiment of the invention, in the case where the coded audio information is to be decoded in the order of being input to the coded information memory section, the information transmission section transmits the coded audio information to the audio decoding section by one of the actual pointer and the temporary pointer in the order of being input to the coded information memory section. In the case where the coded audio information is to be decoded in a different order from that of being input to the coded information memory section, the information transmission section transmits the coded audio information to the audio decoding section in accordance with a decoding order by the actual pointer and the temporary pointer.
In one embodiment of the invention, in the case where coded audio information for a plurality of channels to be output simultaneously are stored proximately to each other in the coded information memory section, the information transmission section transmits the coded audio information for the plurality of channels to the audio decoding section by one of the actual pointer and the temporary pointer. In the case where coded audio information for the plurality of channels to be output simultaneously are stored discretely in the coded information memory section, the information transmission section transmits the coded audio information for the plurality of channels to the audio decoding section by the actual pointer and the temporary pointer.
According to another aspect of the invention, an audio decoding device includes a coded information memory section for accumulating coded audio information for a plurality of channels; an information transmission section for reading the audio coded information stored at an arbitrary position in the coded information memory section; and an audio decoding section for decoding the coded audio information read by the information transmission section and outputting the resultant audio information in accordance with a time axis. Where an actual pointer reads the coded audio information in the coded information memory section so as not to be reread and a temporary pointer reads the coded audio information in the coded information memory section so as to be reread, in the case where the coded audio information for the plurality of channels to be output simultaneously are stored in the coded information memory section at such positions to be continuously transmitted to the audio decoding section, the information transmission section continuously transmits the coded audio information for the plurality of channels to the audio decoding section using one of the actual pointer and the temporary pointer. In the case where the coded audio information for the plurality of channels to be output simultaneously are stored in the coded information memory section at such positions not to be continuously transmitted to the audio decoding section, the information transmission section continuously transmits the coded audio information for the plurality of channels to the audio decoding section using the actual pointer and the temporary pointer. The audio decoding section decodes the coded audio information for the plurality of channels into audio information and outputs the resultant audio information for the plurality of channels simultaneously.
According to still another aspect of the invention, an audio decoding device includes a coded information memory section for accumulating coded audio information for n channels, where nxe2x89xa72; an information transmission section for reading the audio coded information stored for each of the channels at an arbitrary position in the coded information memory section; and an audio decoding section for decoding the coded audio information read by the information transmission section and outputting the resultant audio information in accordance with a time axis. The coded information memory section frames the audio information for n channels by a prescribed time unit, performs frame-by-frame compression coding of the audio information into the coded audio information, stores the coded audio information for m channels in a first half of each of the frames in accordance with the time axis, where n greater than mxe2x89xa71, and stores the coded audio information for (nxe2x88x92m) channels in a second half of each of the frames in accordance with the time axis. Where an actual pointer reads the coded audio information in the coded information memory section so as not to be reread and a temporary pointer reads the coded audio information in the coded information memory section so as to be reread, the actual pointer in the transmission section transmits the coded audio information for m channels from the first half of each of the frames to the audio decoding section by a unit of a prescribed time period, and the temporary pointer in the transmission section transmits the coded audio information for (nxe2x88x92m) channels from the second half of each of the frames to the audio decoding section by a unit of prescribed time period.
According to still another aspect of the invention, an audio decoding device decodes audio signals for n channels, where n less than 1, by sub-band synthesis operation using sub-band synthesis filter data and sub-band signal data. The audio decoding device includes a first memory section for retaining the sub-band synthesis filter data and the sub-band signal data for m channels used for the sub-band synthesis operation, where m less than n; a second memory section for retaining the sub-band signal data and the sub-band synthesis data for n channels; an operation section for receiving the coded audio data and decoding the coded audio data into sub-band data, performing the sub-band synthesis filter operation using the data retained in the first memory section and outputting the decoded audio data for m channels, and requesting replacement of new sub-band synthesis filter data calculated by the sub-band synthesis filter operation and sub-band synthesis filter data subsequently required; and a data transfer section for, upon request from the operation section, replacing the sub-band synthesis filter data and the sub-band signal data in the first and second memory sections by a unit of m channels.
In one embodiment of the invention, the operation section includes a continuous transfer instruction section for instructing data transfer between the first memory section and the second memory section to be performed a plurality of times by instructing the data transfer once.
In one embodiment of the invention, the operation section includes a virtual address assignment section for assuming a virtual address to exist following an actual address at a termination point of a memory area, in the first memory section, storing the sub-band synthesis filter data, causing a start point of the virtual address to correspond to a prescribed actual address of the memory area, and also causing the following virtual addresses to correspond to actual addresses in the memory area sequentially.
In one embodiment of the invention, the first memory section includes a first memory area for retaining sub-band synthesis filter data and sub-band signal data for one channel, and a second memory area for retaining sub-band synthesis filter data and sub-band signal data for another channel. When the operation section performs the sub-band synthesis filter operation for i channels, where i is in the range of 1 through n, using the data stored in the first memory area in the first memory section, the operation section transfers the data for j channels retained in the second memory section to the second memory area of the first memory section, where j is in the range of 1 through n but different from i, and when the operation section performs the sub-band synthesis filter operation for j channels using the data in the second memory area in the first memory section, the operation section transfers the data for k channels retained in the second memory section to the first memory area of the first memory section, where k is in the range of 1 through n but different from i and j. Thus, the data transfer and the sub-band synthesis filter operation are performed in parallel.
According to still another aspect of the invention, an audio decodes device for decoding audio signals for n channels, where n greater than 1, by sub-band synthesis operation using sub-band synthesis filter data and sub-band signal data. The audio decoding device includes a first memory section for retaining the sub-band synthesis filter data and the sub-band signal data for at least one channel used for the sub-band synthesis operation; a second memory section for retaining the sub-band signal data and the sub-band synthesis data for n channels; an operation section for receiving the coded audio data and decoding the coded audio data into sub-band data, performing the sub-band synthesis filter operation using the data retained in the first memory section and outputting the decoded audio data for one channel, and requesting replacement of new sub-band synthesis filter data calculated by the sub-band synthesis filter operation and sub-band synthesis filter data subsequently required; and a data transfer section for, upon request from the operation section, replacing the sub-band synthesis filter data and the sub-band signal data in the first and second memory sections channel by channel.
In one embodiment of the invention, the operation section includes a continuous transfer instruction section for instructing data transfer between the first memory section and the second memory section to be performed a plurality of times by instructing the data transfer once.
In one embodiment of the invention, the operation section includes a virtual address assignment section for assuming a virtual address following an actual address at a termination point of a memory area, in the first memory section, storing the sub-band synthesis filter data, causing a start point of the virtual address to correspond to a prescribed actual address the memory area, and also causing the following virtual addresses to correspond to actual addresses in the memory area sequentially.
According to still another aspect of the invention, a signal processing device includes a first processing section for extracting frame data of at least one frame from continuous frame data for a plurality of channels, processing the data for a specific channel included in the extracted frame data, and outputting the processed data as first output information; and a second processing section for extracting data for another channel included in any of at least one frames fi+j following a frame fi processed by the first processing section, where jxe2x89xa71, converting the extracted data into a stream data, and outputting the converted data as second output information.
In one embodiment of the invention, the second processing section includes a frame establishment section for, in the case where the frame data includes a synchronous word indicating the start of the frame data and side information indicating the length of the frame data, confirming that the synchronous word appears in each of a plurality of frames, and a frame processing section for processing the frame data in accordance with a prescribed format, converting the processed data into stream data of a common format which is acceptable to another signal processing apparatus, and outputting the converted stream data.
In one embodiment of the invention, the frame establishment section detects the synchronous word and calculates the length of the frame data using the side information, and then detects the synchronous word at the start of the following frame, thereby confirming the establishment of data of one frame.
In one embodiment of the invention, the frame establishment section detects a data error of the frame.
In one embodiment of the invention, in the case where the frame establishment is confirmed by the frame establishment section, the frame processing section adds information, indicating that the frame has been established, to the stream data to be output. In the case where the frame has not been established, the frame processing section adds the information, indicating that the frame has not been established, to the stream data to be output.
In one embodiment of the invention, the frame data is multi-channel audio compression data, and the frame processing section converts the input frame data to a non-PCM signal defined by the IEC958 format and outputs the non-PCM signal.
In one embodiment of the invention, the frame data is multi-channel audio compression data, and the second processing section detects the synchronous word of the input frame data and calculates the length of the frame to confirm the synchronous word of the following frame data, further detects a data error of the frame to establish the frame, and generates a non-PCM signal defined by the IEC958 format and outputs the non-PCM signal.
In one embodiment of the invention, the first processing section decodes the frame data before framing.
In one embodiment of the invention, the first processing section decodes the frame data with a delay of a prescribed time period with respect to the time when the frame is established by the second processing section.
In one embodiment of the invention, the first processing section decodes the frame data of the frame, the establishment of which is confirmed by the second processing section, with a delay of a prescribed time period with respect to the time when the establishment is confirmed by the second processing section.
In one embodiment of the invention, the frame data is multi-channel audio compression data, and the first processing section decodes the data of the frame, the establishment of which is confirmed by the second processing section, with a delay of a prescribed time period with respect to the time when the frame is established.
In one embodiment of the invention, the frame data is multi-channel audio compression data, and the first processing section decodes the audio compression data into an audio signal with a delay of a prescribed time period with respect to the time when the audio compression data is output as a non-PCM signal defined by the IEC958 format by the second processing section.
In one embodiment of the invention, the frame data is multi-channel audio compression data, and the first processing section, when the decoding of the audio data is started, continuously processes the frame data for a prescribed frame number and outputs the first output information, and then generates the first output information alternately with the conversion performed by the second processing section.
In one embodiment of the invention, the frame data is multi-channel audio compression data, and the first processing section includes a delay amount determination section, for, when the frame data is converted into a non-PCM signal defined by the. IEC958 format, calculating time delay caused by the signal conversion and determining the timing for starting the decoding of the audio data based on the delay amount.
Thus, the invention described herein makes possible the advantages of (1) providing an audio decoding device for reproducing audio signals for a plurality of channels simultaneously, while minimizing the required capacity of the memory for temporarily storing coded signals for the channels, even where the channels for the audio signals to be reproduced simultaneously are arranged discretely timewise as in an MPEG2 multi-channel bit stream, and thus can be formed as a one-chip device relatively easily; (2) providing an audio decoding device for minimizing the rise in the costs of the memory used for decoding the coded signals and also having an improved processing ability of audio signals of a sub-band coding system by using both a memory capable of high-speed access and a memory not capable of high-speed access (e.g., DRAM) in a memory section; and (3) providing a signal processing device for, when the multi-channel coded signals are transmitted from the internal decoder to the external decoder, reducing the required capacity of the buffer memory provided therebetween while synchronizing the audio signal output from the internal decoder and the audio signal output from the external decoder.
These and other advantages of the present invention will become apparent to those skilled in the art upon reading and understanding the following detailed description with reference to the accompanying figures.